using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.CompilerServices;

    public static class ThemeOverides
    {
        private static readonly bool SetMe = Overrides();

        
        private static bool Overrides()
        {
            ThemeBase.PageAttrKey = "YesPlayLovePage";
            ThemeBase.DefaultPageClass = "YoshiFlowMain.HomePage";
            ThemeBase.OldPages = AllPages.Pages;
            return SetMe;
        }
    }

    public static class AllPages
    {
        public const string HomePage = "YoshiFlowMain.HomePage";
        public const string MagneticListPage = "YoshiFlowMain.MagneticListPage";
        public const string SearchPage = "YoshiFlowMain.SearchPage";
        public const string EmailPage = "YoshiFlowMain.EmailPage";
        public const string GamesPage = "YoshiFlowMain.GamesPage";
        public const string FeaturesPage = "YoshiFlowMain.FeaturesPage";
        public const string ProfilePage = "YoshiFlowMain.ProfilePage";

        public const string NewBeePage1 = "YoshiFlowNewBee.NewBeePage1";
        public const string NewBeePage2 = "YoshiFlowNewBee.NewBeePage2";
        public const string NewBeePage3 = "YoshiFlowNewBee.NewBeePage3";
        public const string NewBeePage4 = "YoshiFlowNewBee.NewBeePage4";
        public const string NewBeePage5 = "YoshiFlowNewBee.NewBeePage5";

        public const string PublicPage = "YoshiFlowMain.PublicPage";
        public const string MasterPage = "YoshiFlowMain.MasterPage";
        public const string NewUserPage = NewBeePage1;

        public static string Page(string n)
        {
            return (string)((Dictionary)Script.Literal("AllPages"))[n.Substr(0, 1).ToLowerCase() + n.Substr(1)];
        }

        internal static Dictionary Pages
        {
            get
            {
                Dictionary pages = (Dictionary)Script.Literal("AllPages");
                Dictionary nPages = new Dictionary();
                foreach (KeyValuePair<string, object> p in pages)
                {
                    if (Type.GetScriptType(p.Value) == "string" && p.Key.IndexOf("Page") >= 0)
                        nPages[(string)p.Value] = p.Value;
                }
                return nPages;
            }
        }
    }

    [IgnoreNamespace]
    public static class TopBarTheme
    {
        public const string Saved = "saved";
        public const string Unsaved = "unsaved";
        public const string HomeBtnText = "&hearts;Aliveness";
        public const string EmailBtnText = "Conversations";
        public const string SearchBtnText = "Search";
        public const string GamesBtnText = "Games";
        public const string FeaturesBtnText = "&rsaquo;Features";
        public const string MagneticListBtnText = "Focus";
        public const string ProfileVis = "Your Profile";
    }

    [IgnoreNamespace]
    public static class MagneticListPageTheme
    {
        public const string LogoImage = "images/Common/YoshiAction.jpg";
        public const string PageTitle = "YoshiMate Magnetic List";
    }

    [IgnoreNamespace]
    public static class MagneticListTheme
    {
        public const string BubbleTopic = "Magnetic Bubble";
        public const string EmailTopic = "Email";
        public const string DeleteListTitle = "Delete this list";
        public const string NewListTitle = "Create a new list";
        public const string DeleteItemTitle = "Delete this item";
    }

    [IgnoreNamespace]
    public static class EmailTheme
    {
        public const string PleaseFillMsg = "Please fill in a {0}";
        public const string MailSubject = "New YesPlayLove message from {0}";
        public const string InboxTitle = "Conversations";
        public const string MessageTitle = "Message";
        public const string ReplyTitle = "Reply";
        public const string SendButton = "send";
        public const string ReplyButton = "reply";
        public const string CancelButton = "cancel";
        public const string PageTitle = "YesPlayLove Messages";
        public const string NoConv = "no conversations";
    }

    [IgnoreNamespace]
    public static class PublicPageTheme
    {
        public const string PageTitle = "YesPlayLove";
    }

    [IgnoreNamespace]
    public static class UserTheme
    {
        public const string PageTitle = "YesPlayLove Profile";
        public const string LeaveBlank = "leave blank";
    }

    [IgnoreNamespace]
    public static class GamesTheme
    {
        public const string PageTitle = "YesPlayLove Games";
    }

    [IgnoreNamespace]
    public static class SearchTheme
    {
        public const string PageTitle = "YesPlayLove Search";
    }

    [IgnoreNamespace]
    public static class HelpTheme
    {
        public const string CoolCharsLink = "http://www.theworldofstuff.com/characters/";
        public const string YahooGeocodeLink = "http://where.yahooapis.com/geocode?flags=&q=37+Hillside+Ave,+Cumberland+Center+ME&appid=dj0yJmk9bUdtdEwwYThYbmFoJmQ9WVdrOVIxSmpZa1ZSTlRJbWNHbzlPRGN5TlRreU5qSS0mcz1jb25zdW1lcnNlY3JldCZ4PTEy";
    }

    [IgnoreNamespace]
    public static class Local
    {
        public const string Foot = "foot";
        public const string Feet = "feet";
        public const string Inch = "inch";
        public const string Inches = "inches";
    }

    [IgnoreNamespace]
    public static class Items
    {
        public static readonly string[] EmotionalScale =
            new string[]
                {
                    "Joy/Appreciation/Empowered/Freedom/Love",
                    "Passion",
                    "Enthusiasm/Eagerness/Happiness",
                    "Positive Expectation/Belief",
                    "Optimism",
                    "Hopefulness",
                    "Contentment",
                    "Boredom",
                    "Pessimism",
                    "Frustration/Irritation/Impatience",
                    "Overwhelment",
                    "Disappointment",
                    "Doubt",
                    "Worry",
                    "Blame",
                    "Discouragement",
                    "Anger",
                    "Revenge",
                    "Hatred/Rage",
                    "Jealousy",
                    "Insecurity/Guilt/Unworthiness",
                    "Fear/Grief/Depression/Despair/Powerlessness"
                };
    }
